package com.yiren.backstage.judge.services.jjd;
/**
 * Time:2022/4/24 16:02
 * Author:xiaozan
 * Description:加减挡评判线程 服务接口
 */
public interface IJjdJudgeThreadService {

    /**
     * 获取挡位操作顺序
     * @return
     */
    int loadGearOperOrder();

    /**
     * 播报挡位提示语音
     * @param gearOperOrderArray 挡位执行顺序数组
     * @param index 当前执行顺序中的索引
     * @return
     */
    boolean playOperVoice(int[] gearOperOrderArray,int index);

    /**
     * 是否符合挡位操作
     * @param operGear 需操作完成的挡位
     * @return
     */
    boolean accordGearOper(int operGear);

    /**
     * 是否挂错挡
     * @param gearOperOrderArray 挡位执行顺序数组
     * @param index 当前执行顺序中的索引
     * @return
     */
    boolean wrongGear(int[] gearOperOrderArray,int index);

    /**
     * 单个挡位操作是否超时
     * @param startMileage 开始时间
     * @param startTime 开始里程
     * @return
     */
    boolean singleGearOperIsOvertime(float startMileage,long startTime);

    /**
     * 播报档位完成语音
     * @param operGear
     * @return
     */
    boolean playFinishGearVoice(int operGear);

    /**
     * 加减挡项目操作是否超时
     * @param startMileage
     * @param startTime
     * @return
     */
    boolean jjdProjectIsOverTime(float startMileage,long startTime);

}
